OPC协议的安全性问题主要体现在哪几个方面
OPC协议的安全性问题主要体现在以下几个方面:
已知操作系统的漏洞问题:由于OPC协议基于Windows操作系统,通常的主机安全问题也会影响OPC。微软的DCOM技术以高复杂性和高漏洞数量而著称,这些操作系统层面的漏洞也成为经典OPC协议漏洞的来源和攻击入口。虽然OPC及相关控制系统漏洞只有基金会的授权才能获得,但大量现存OLE与RPC漏洞早已广为人知。
Windows操作系统的弱口令:OPC协议使用的最基本的通信握手过程需要建立在DCOM技术上,通过Windows内置账号的方式进行认证。但大量的OPC服务器使用弱安全认证机制,即使启用了认证技术也常常使用弱口令。
部署的操作系统承载了多余的、不必要的服务:许多部署的操作系统启用了与ICS无关的额外服务,导致非必需的运行进程和来访端口,如HTTP、NetBIOS等,这些问题都使OPC服务器暴露在攻击之下。
审计记录不完善:由于Windows 2000/XP等老旧系统的审计设置默认不记录DCOM连接请求,所以攻击发生时日志记录往往不充分甚至丢失,无法提供足够的详细证据。
动态端口无法进行安全防护:OPC协议通过135端口建立通信链路后,采用了随机端口(1024~65535)传输数据,广泛的数据传输端口给安全防护带来了问题,无法使用传统的五元组方式来进行防护。
过时的授权机制:受限于维护窗口、解释性问题等诸多因素,工业网络系统升级困难,导致不安全的授权机制仍在使用。例如,在许多系统中仍在使用默认的Windows 2000 LanMan(LM)和Windows NT LanMan(NTLM)机制,这些机制与其他过时的授权机制相比过于脆弱而易于攻击。
OPC 安全解决方案的典型应用:
过程控制层:操作工程师需要生产机器的控制权限。例如,某操作工程师需要安全控制区域A内的全部系统,和远程监察区域B的能力。根据该工作需要,OPC安全网关可以依据该工程师的用户身份设置:区域A内系统的浏览、读、写和添加的全部权限;及区域B系统的浏览和可读权限。
业务和信息层:业务领导需要监测整个车间或工厂的运行,进而了解整体进度和质量达标情况,但不需要实际作业去控制。例如:某部门领导的职责范围是负责监测每日的车间运行状况;和每机器的数据点内容。根据该工作需要,OPC安全解决方案可以使该负责人只有每系统 - 每数据点的每日运行报告的浏览权限。
外部第三方:不在车间或工厂网络之内的外部用户经常也需要与业务领导同样的数据访问权限,但是由于网络不同会产生诸多的不稳定和不安全因素。OPC安全解决方案可以采用必要和正确的数据加密,将数据经安全可靠的通信信道有保障地传输至外部的第三方用户。